<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>shark::HypervolumeIndicator Struct Reference</title>
<script type="text/javaScript" src="search/search.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js"></script>
<script src="../../mlstyle.js"></script>
<link href="../css/besser.css" rel="stylesheet" type="text/css"/>
</head>
<!-- pretty cool: each body gets an id tag which is the basename of the web page  -->
<!--              and allows for page-specific CSS. this is client-side scripted, -->
<!--              so the id will not yet show up in the served source code -->
<script type="text/javascript">
    jQuery(document).ready(function () {
        var url = jQuery(location).attr('href');
        var pname = url.substr(url.lastIndexOf("/")+1, url.lastIndexOf(".")-url.lastIndexOf("/")-1);
        jQuery('#this_url').html('<strong>' + pname + '</strong>');
        jQuery('body').attr('id', pname);
    });
</script>
<body>
    <div id="shark_old">
        <div id="wrap">
            <div id="header">
                <div id="site-name"><a href="../../sphinx_pages/build/html/index.html">Shark machine learning library</a></div>
                <ul id="nav">
                    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/installation.html">Installation</a>
                    </li>
		    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/tutorials/tutorials.html">Tutorials</a>
                    </li>
		    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/benchmark.html">Benchmarks</a>
                    </li>
                    <li class="active">
                        <a href="classes.html">Documentation</a>
                        <ul>
                            <li class="first"></li>
                            <li><a href="../../sphinx_pages/build/html/rest_sources/quickref/quickref.html">Quick references</a></li>
                            <li><a href="classes.html">Class list</a></li>
                            <li class="last"><a href="group__shark__globals.html">Global functions</a></li>
                        </ul>
                    </li>
                </ul>
            </div>
        </div>
    </div>
<div id="doxywrapper">
<!--
    <div id="global_doxytitle">Doxygen<br>Documentation:</div>
-->
    <div id="navrow_wrapper">
<!-- Generated by Doxygen 1.9.8 -->
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceshark.html">shark</a></li><li class="navelem"><a class="el" href="structshark_1_1_hypervolume_indicator.html">HypervolumeIndicator</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="structshark_1_1_hypervolume_indicator-members.html">List of all members</a> &#124;
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle"><div class="title">shark::HypervolumeIndicator Struct Reference</div></div>
</div><!--header-->
<div class="contents">

<p>Calculates the hypervolume covered by a front of non-dominated points.  
 <a href="structshark_1_1_hypervolume_indicator.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_hypervolume_indicator_8h_source.html">shark/Algorithms/DirectSearch/Operators/Indicators/HypervolumeIndicator.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:afb990cd72ca80aed7cd71079d39aa1ca" id="r_afb990cd72ca80aed7cd71079d39aa1ca"><td class="memTemplParams" colspan="2">template&lt;typename ParetoFrontType , typename ParetoArchive &gt; </td></tr>
<tr class="memitem:afb990cd72ca80aed7cd71079d39aa1ca"><td class="memTemplItemLeft" align="right" valign="top">std::size_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#afb990cd72ca80aed7cd71079d39aa1ca">leastContributor</a> (ParetoFrontType const &amp;front, ParetoArchive const &amp;) const</td></tr>
<tr class="memdesc:afb990cd72ca80aed7cd71079d39aa1ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines the point contributing the least hypervolume to the overall front of points.  <br /></td></tr>
<tr class="separator:afb990cd72ca80aed7cd71079d39aa1ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae06eafa811c6d1af216ef947491516c9" id="r_ae06eafa811c6d1af216ef947491516c9"><td class="memTemplParams" colspan="2">template&lt;typename ParetoFrontType , typename ParetoArchive &gt; </td></tr>
<tr class="memitem:ae06eafa811c6d1af216ef947491516c9"><td class="memTemplItemLeft" align="right" valign="top">std::vector&lt; std::size_t &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#ae06eafa811c6d1af216ef947491516c9">leastContributors</a> (ParetoFrontType const &amp;front, ParetoArchive const &amp;archive, std::size_t K) const</td></tr>
<tr class="separator:ae06eafa811c6d1af216ef947491516c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f66955d9e917b7a569608238b538827" id="r_a3f66955d9e917b7a569608238b538827"><td class="memTemplParams" colspan="2">template&lt;class random &gt; </td></tr>
<tr class="memitem:a3f66955d9e917b7a569608238b538827"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#a3f66955d9e917b7a569608238b538827">init</a> (std::size_t, std::size_t, random &amp;)</td></tr>
<tr class="separator:a3f66955d9e917b7a569608238b538827"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada98460c62e1a24938ef9c7049df68ec" id="r_ada98460c62e1a24938ef9c7049df68ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#ada98460c62e1a24938ef9c7049df68ec">setReference</a> (RealVector const &amp;newReference)</td></tr>
<tr class="memdesc:ada98460c62e1a24938ef9c7049df68ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the reference point.  <br /></td></tr>
<tr class="separator:ada98460c62e1a24938ef9c7049df68ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9012e8742bcb504e20fad699b4f6aa41" id="r_a9012e8742bcb504e20fad699b4f6aa41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#a9012e8742bcb504e20fad699b4f6aa41">useApproximation</a> (bool useApproximation)</td></tr>
<tr class="memdesc:a9012e8742bcb504e20fad699b4f6aa41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Whether the approximtive algorithm should be used on large problems.  <br /></td></tr>
<tr class="separator:a9012e8742bcb504e20fad699b4f6aa41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e0a00ec4eec8371553fd6971352212e" id="r_a5e0a00ec4eec8371553fd6971352212e"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#a5e0a00ec4eec8371553fd6971352212e">approximationEpsilon</a> () const</td></tr>
<tr class="memdesc:a5e0a00ec4eec8371553fd6971352212e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error bound for the approximative algorithm.  <br /></td></tr>
<tr class="separator:a5e0a00ec4eec8371553fd6971352212e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92ee237bb68db2d85931b09424d96b7e" id="r_a92ee237bb68db2d85931b09424d96b7e"><td class="memItemLeft" align="right" valign="top">double &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#a92ee237bb68db2d85931b09424d96b7e">approximationEpsilon</a> ()</td></tr>
<tr class="memdesc:a92ee237bb68db2d85931b09424d96b7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error bound for the approximative algorithm.  <br /></td></tr>
<tr class="separator:a92ee237bb68db2d85931b09424d96b7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e06f7dec5c62471fd105e6609442bb4" id="r_a8e06f7dec5c62471fd105e6609442bb4"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#a8e06f7dec5c62471fd105e6609442bb4">approximationDelta</a> () const</td></tr>
<tr class="memdesc:a8e06f7dec5c62471fd105e6609442bb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error probability for the approximative algorithm.  <br /></td></tr>
<tr class="separator:a8e06f7dec5c62471fd105e6609442bb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa798472c7a468d095a0f52c6c90de7e7" id="r_aa798472c7a468d095a0f52c6c90de7e7"><td class="memItemLeft" align="right" valign="top">double &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#aa798472c7a468d095a0f52c6c90de7e7">approximationDelta</a> ()</td></tr>
<tr class="memdesc:aa798472c7a468d095a0f52c6c90de7e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error probability for the approximative algorithm.  <br /></td></tr>
<tr class="separator:aa798472c7a468d095a0f52c6c90de7e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae8e6f737532a0b949a771f9d2be4391" id="r_aae8e6f737532a0b949a771f9d2be4391"><td class="memTemplParams" colspan="2">template&lt;typename Archive &gt; </td></tr>
<tr class="memitem:aae8e6f737532a0b949a771f9d2be4391"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structshark_1_1_hypervolume_indicator.html#aae8e6f737532a0b949a771f9d2be4391">serialize</a> (Archive &amp;archive, const unsigned int version)</td></tr>
<tr class="separator:aae8e6f737532a0b949a771f9d2be4391"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Calculates the hypervolume covered by a front of non-dominated points. </p>
<p>If given, the Indicator uses a provided reference value that can be set via setReference. Otherwise, it is computed from the data by using the maximum value in the set. As this usually gives 0 contribution to the extremum points (i.e. the ones with best function value), those points are skipped when computing the contribution (i.e. extremum points are never selected). Note, that for boundary points that are not extrema, this does not hold and they are selected.</p>
<p>for problems with many objectives, an approximative algorithm can be used. </p>

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00054">54</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="aa798472c7a468d095a0f52c6c90de7e7" name="aa798472c7a468d095a0f52c6c90de7e7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa798472c7a468d095a0f52c6c90de7e7">&#9670;&#160;</a></span>approximationDelta() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double &amp; shark::HypervolumeIndicator::approximationDelta </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Error probability for the approximative algorithm. </p>

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00113">113</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

<p class="reference">References <a class="el" href="structshark_1_1_hypervolume_contribution.html#ad69390eb1fc2b938ab7c4e75b29a07de">shark::HypervolumeContribution::approximationDelta()</a>.</p>

</div>
</div>
<a id="a8e06f7dec5c62471fd105e6609442bb4" name="a8e06f7dec5c62471fd105e6609442bb4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e06f7dec5c62471fd105e6609442bb4">&#9670;&#160;</a></span>approximationDelta() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double shark::HypervolumeIndicator::approximationDelta </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Error probability for the approximative algorithm. </p>

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00108">108</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

<p class="reference">References <a class="el" href="structshark_1_1_hypervolume_contribution.html#ad69390eb1fc2b938ab7c4e75b29a07de">shark::HypervolumeContribution::approximationDelta()</a>.</p>

</div>
</div>
<a id="a92ee237bb68db2d85931b09424d96b7e" name="a92ee237bb68db2d85931b09424d96b7e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a92ee237bb68db2d85931b09424d96b7e">&#9670;&#160;</a></span>approximationEpsilon() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double &amp; shark::HypervolumeIndicator::approximationEpsilon </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Error bound for the approximative algorithm. </p>

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00103">103</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

<p class="reference">References <a class="el" href="structshark_1_1_hypervolume_contribution.html#a256082b054ca17a3bf55857dc0513975">shark::HypervolumeContribution::approximationEpsilon()</a>.</p>

</div>
</div>
<a id="a5e0a00ec4eec8371553fd6971352212e" name="a5e0a00ec4eec8371553fd6971352212e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e0a00ec4eec8371553fd6971352212e">&#9670;&#160;</a></span>approximationEpsilon() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double shark::HypervolumeIndicator::approximationEpsilon </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Error bound for the approximative algorithm. </p>

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00099">99</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

<p class="reference">References <a class="el" href="structshark_1_1_hypervolume_contribution.html#a256082b054ca17a3bf55857dc0513975">shark::HypervolumeContribution::approximationEpsilon()</a>.</p>

</div>
</div>
<a id="a3f66955d9e917b7a569608238b538827" name="a3f66955d9e917b7a569608238b538827"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f66955d9e917b7a569608238b538827">&#9670;&#160;</a></span>init()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class random &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void shark::HypervolumeIndicator::init </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">random &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00084">84</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

</div>
</div>
<a id="afb990cd72ca80aed7cd71079d39aa1ca" name="afb990cd72ca80aed7cd71079d39aa1ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb990cd72ca80aed7cd71079d39aa1ca">&#9670;&#160;</a></span>leastContributor()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ParetoFrontType , typename ParetoArchive &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::size_t shark::HypervolumeIndicator::leastContributor </td>
          <td>(</td>
          <td class="paramtype">ParetoFrontType const &amp;&#160;</td>
          <td class="paramname"><em>front</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ParetoArchive const &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Determines the point contributing the least hypervolume to the overall front of points. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">front</td><td>pareto front of points </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00059">59</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

<p class="reference">References <a class="el" href="structshark_1_1_hypervolume_contribution.html#a46626da682183658b940865fd4589506">shark::HypervolumeContribution::smallest()</a>.</p>

<p class="reference">Referenced by <a class="el" href="structshark_1_1_hypervolume_indicator.html#ae06eafa811c6d1af216ef947491516c9">leastContributors()</a>.</p>

</div>
</div>
<a id="ae06eafa811c6d1af216ef947491516c9" name="ae06eafa811c6d1af216ef947491516c9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae06eafa811c6d1af216ef947491516c9">&#9670;&#160;</a></span>leastContributors()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename ParetoFrontType , typename ParetoArchive &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; std::size_t &gt; shark::HypervolumeIndicator::leastContributors </td>
          <td>(</td>
          <td class="paramtype">ParetoFrontType const &amp;&#160;</td>
          <td class="paramname"><em>front</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ParetoArchive const &amp;&#160;</td>
          <td class="paramname"><em>archive</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>K</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00068">68</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

<p class="reference">References <a class="el" href="structshark_1_1_hypervolume_indicator.html#afb990cd72ca80aed7cd71079d39aa1ca">leastContributor()</a>.</p>

</div>
</div>
<a id="aae8e6f737532a0b949a771f9d2be4391" name="aae8e6f737532a0b949a771f9d2be4391"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae8e6f737532a0b949a771f9d2be4391">&#9670;&#160;</a></span>serialize()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename Archive &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void shark::HypervolumeIndicator::serialize </td>
          <td>(</td>
          <td class="paramtype">Archive &amp;&#160;</td>
          <td class="paramname"><em>archive</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned int&#160;</td>
          <td class="paramname"><em>version</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00118">118</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

</div>
</div>
<a id="ada98460c62e1a24938ef9c7049df68ec" name="ada98460c62e1a24938ef9c7049df68ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada98460c62e1a24938ef9c7049df68ec">&#9670;&#160;</a></span>setReference()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void shark::HypervolumeIndicator::setReference </td>
          <td>(</td>
          <td class="paramtype">RealVector const &amp;&#160;</td>
          <td class="paramname"><em>newReference</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets the reference point. </p>
<p>If no point is set, it is estimated from the current front and the extremum points are never selected. </p>

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00089">89</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

</div>
</div>
<a id="a9012e8742bcb504e20fad699b4f6aa41" name="a9012e8742bcb504e20fad699b4f6aa41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9012e8742bcb504e20fad699b4f6aa41">&#9670;&#160;</a></span>useApproximation()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void shark::HypervolumeIndicator::useApproximation </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>useApproximation</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Whether the approximtive algorithm should be used on large problems. </p>

<p class="definition">Definition at line <a class="el" href="_hypervolume_indicator_8h_source.html#l00094">94</a> of file <a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a>.</p>

<p class="reference">References <a class="el" href="structshark_1_1_hypervolume_contribution.html#a29198ff8cda59711f36122db30a39413">shark::HypervolumeContribution::useApproximation()</a>, and <a class="el" href="structshark_1_1_hypervolume_indicator.html#a9012e8742bcb504e20fad699b4f6aa41">useApproximation()</a>.</p>

<p class="reference">Referenced by <a class="el" href="structshark_1_1_hypervolume_indicator.html#a9012e8742bcb504e20fad699b4f6aa41">useApproximation()</a>.</p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/shark/Algorithms/DirectSearch/Operators/Indicators/<a class="el" href="_hypervolume_indicator_8h_source.html">HypervolumeIndicator.h</a></li>
</ul>
</div><!-- contents -->
</div>
</body>
</html>
